﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000109 RID: 265
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class BattleRogueMagicDetailInfo : IMessage<BattleRogueMagicDetailInfo>, IMessage, IEquatable<BattleRogueMagicDetailInfo>, IDeepCloneable<BattleRogueMagicDetailInfo>, IBufferMessage
	{
		// Token: 0x17000391 RID: 913
		// (get) Token: 0x06000C1B RID: 3099 RVA: 0x00024084 File Offset: 0x00022284
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<BattleRogueMagicDetailInfo> Parser
		{
			get
			{
				return BattleRogueMagicDetailInfo._parser;
			}
		}

		// Token: 0x17000392 RID: 914
		// (get) Token: 0x06000C1C RID: 3100 RVA: 0x0002408B File Offset: 0x0002228B
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return BattleRogueMagicDetailInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17000393 RID: 915
		// (get) Token: 0x06000C1D RID: 3101 RVA: 0x0002409D File Offset: 0x0002229D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return BattleRogueMagicDetailInfo.Descriptor;
			}
		}

		// Token: 0x06000C1E RID: 3102 RVA: 0x000240A4 File Offset: 0x000222A4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public BattleRogueMagicDetailInfo()
		{
		}

		// Token: 0x06000C1F RID: 3103 RVA: 0x000240AC File Offset: 0x000222AC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public BattleRogueMagicDetailInfo(BattleRogueMagicDetailInfo other) : this()
		{
			if (other.FCAJCCGAIGHCase == BattleRogueMagicDetailInfo.FCAJCCGAIGHOneofCase.BattleMagicItemInfo)
			{
				this.BattleMagicItemInfo = other.BattleMagicItemInfo.Clone();
			}
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x06000C20 RID: 3104 RVA: 0x000240DF File Offset: 0x000222DF
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public BattleRogueMagicDetailInfo Clone()
		{
			return new BattleRogueMagicDetailInfo(this);
		}

		// Token: 0x17000394 RID: 916
		// (get) Token: 0x06000C21 RID: 3105 RVA: 0x000240E7 File Offset: 0x000222E7
		// (set) Token: 0x06000C22 RID: 3106 RVA: 0x000240FF File Offset: 0x000222FF
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public BattleRogueMagicItemInfo BattleMagicItemInfo
		{
			get
			{
				if (this.fCAJCCGAIGHCase_ != BattleRogueMagicDetailInfo.FCAJCCGAIGHOneofCase.BattleMagicItemInfo)
				{
					return null;
				}
				return (BattleRogueMagicItemInfo)this.fCAJCCGAIGH_;
			}
			set
			{
				this.fCAJCCGAIGH_ = value;
				this.fCAJCCGAIGHCase_ = ((value == null) ? BattleRogueMagicDetailInfo.FCAJCCGAIGHOneofCase.None : BattleRogueMagicDetailInfo.FCAJCCGAIGHOneofCase.BattleMagicItemInfo);
			}
		}

		// Token: 0x17000395 RID: 917
		// (get) Token: 0x06000C23 RID: 3107 RVA: 0x00024115 File Offset: 0x00022315
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public BattleRogueMagicDetailInfo.FCAJCCGAIGHOneofCase FCAJCCGAIGHCase
		{
			get
			{
				return this.fCAJCCGAIGHCase_;
			}
		}

		// Token: 0x06000C24 RID: 3108 RVA: 0x0002411D File Offset: 0x0002231D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void ClearFCAJCCGAIGH()
		{
			this.fCAJCCGAIGHCase_ = BattleRogueMagicDetailInfo.FCAJCCGAIGHOneofCase.None;
			this.fCAJCCGAIGH_ = null;
		}

		// Token: 0x06000C25 RID: 3109 RVA: 0x0002412D File Offset: 0x0002232D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as BattleRogueMagicDetailInfo);
		}

		// Token: 0x06000C26 RID: 3110 RVA: 0x0002413C File Offset: 0x0002233C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(BattleRogueMagicDetailInfo other)
		{
			return other != null && (other == this || (object.Equals(this.BattleMagicItemInfo, other.BattleMagicItemInfo) && this.FCAJCCGAIGHCase == other.FCAJCCGAIGHCase && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x06000C27 RID: 3111 RVA: 0x0002418C File Offset: 0x0002238C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.fCAJCCGAIGHCase_ == BattleRogueMagicDetailInfo.FCAJCCGAIGHOneofCase.BattleMagicItemInfo)
			{
				num ^= this.BattleMagicItemInfo.GetHashCode();
			}
			num ^= (int)this.fCAJCCGAIGHCase_;
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x06000C28 RID: 3112 RVA: 0x000241D2 File Offset: 0x000223D2
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x06000C29 RID: 3113 RVA: 0x000241DA File Offset: 0x000223DA
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x06000C2A RID: 3114 RVA: 0x000241E3 File Offset: 0x000223E3
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.fCAJCCGAIGHCase_ == BattleRogueMagicDetailInfo.FCAJCCGAIGHOneofCase.BattleMagicItemInfo)
			{
				output.WriteRawTag(10);
				output.WriteMessage(this.BattleMagicItemInfo);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x06000C2B RID: 3115 RVA: 0x00024218 File Offset: 0x00022418
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.fCAJCCGAIGHCase_ == BattleRogueMagicDetailInfo.FCAJCCGAIGHOneofCase.BattleMagicItemInfo)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.BattleMagicItemInfo);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x06000C2C RID: 3116 RVA: 0x00024258 File Offset: 0x00022458
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(BattleRogueMagicDetailInfo other)
		{
			if (other == null)
			{
				return;
			}
			if (other.FCAJCCGAIGHCase == BattleRogueMagicDetailInfo.FCAJCCGAIGHOneofCase.BattleMagicItemInfo)
			{
				if (this.BattleMagicItemInfo == null)
				{
					this.BattleMagicItemInfo = new BattleRogueMagicItemInfo();
				}
				this.BattleMagicItemInfo.MergeFrom(other.BattleMagicItemInfo);
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x06000C2D RID: 3117 RVA: 0x000242AD File Offset: 0x000224AD
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x06000C2E RID: 3118 RVA: 0x000242B8 File Offset: 0x000224B8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 10U)
				{
					this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
				}
				else
				{
					BattleRogueMagicItemInfo battleRogueMagicItemInfo = new BattleRogueMagicItemInfo();
					if (this.fCAJCCGAIGHCase_ == BattleRogueMagicDetailInfo.FCAJCCGAIGHOneofCase.BattleMagicItemInfo)
					{
						battleRogueMagicItemInfo.MergeFrom(this.BattleMagicItemInfo);
					}
					input.ReadMessage(battleRogueMagicItemInfo);
					this.BattleMagicItemInfo = battleRogueMagicItemInfo;
				}
			}
		}

		// Token: 0x04000509 RID: 1289
		private static readonly MessageParser<BattleRogueMagicDetailInfo> _parser = new MessageParser<BattleRogueMagicDetailInfo>(() => new BattleRogueMagicDetailInfo());

		// Token: 0x0400050A RID: 1290
		private UnknownFieldSet _unknownFields;

		// Token: 0x0400050B RID: 1291
		public const int BattleMagicItemInfoFieldNumber = 1;

		// Token: 0x0400050C RID: 1292
		private object fCAJCCGAIGH_;

		// Token: 0x0400050D RID: 1293
		private BattleRogueMagicDetailInfo.FCAJCCGAIGHOneofCase fCAJCCGAIGHCase_;

		// Token: 0x020015A3 RID: 5539
		public enum FCAJCCGAIGHOneofCase
		{
			// Token: 0x0400602F RID: 24623
			None,
			// Token: 0x04006030 RID: 24624
			BattleMagicItemInfo
		}
	}
}
